"""author: wenyao
   data: 2021/5/20
   project: devopscmdb
"""
#property 把方法当做属性来使用
#设定Person属性age， 可以修改age 当age范围不在0到100之间则报错

class Person():
    _age = 1

    @property   #property本身会创建另外一个装饰器 @age.setter   @age.deleter
    def age(self):
        return self._age

    @age.setter
    def age(self,_age):
        if 0< _age < 100:
            self._age = _age
        else:
            raise ValueError("年龄不在范围")

p = Person()
print(p.age)
p.age = 100

# class  Person():
#   num=2
#   @property  #把方法当作属性来使用  设定person属性age可以修改age当age范围不在0到000
#   def num1(self):
#            return self.num
#   @num1.setter                            #使用@property会产生 @age.setter @.del
#   def num1(self,num):
#            if isinstance(num,int):
#                self.num=num
#            else:
#                  raise ValueError("年龄不是整数")
# p= Person()
# p.num1=2.4
# print(p.num1)